package com.noodles.mall.entity;

import java.math.BigDecimal;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.noodles.mall.entity.parent.BaseEntity;
import com.noodles.mall.service.ItemTypeService;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 *
 * </p>
 *
 * @author noodles
 * @since 2021-02-06
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("t_item")
public class Item extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 商品所属分类id
     */
    private Integer typeId;

    /**
     * 商品名称
     */
    private String name;

    /**
     * 商品标题
     */
    private String title;

    /**
     * 少于500字的商品描述
     */
    private String description;

    /**
     * 原价
     */
    private BigDecimal price;

    /**
     * 售价
     */
    private BigDecimal salePrice;

    /**
     * 剩余数量
     */
    private Integer count;

    /**
     * 卖出数量
     */
    private Integer saleCount;

    /**
     * 商品图片
     */
    private String imageUrl;

    /**
     * 商品状态（1正常，0下架）
     */
    private Boolean status;

    @TableField(exist = false)
    private ItemType itemType;

    /** 获取类别信息 **/
    public Item initItemType(){
        setItemType(ItemTypeService.INTEGER_ITEM_TYPE_MAP.get(typeId));
        return this;
    }

}
